Permission denied (publickey)

Descripcion

Cuando ejecutamos un push desde git obtenemos el siguiente mensaje de error:

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Solucion

Este error se produce porque no se tiene almacenada la clave publica en la cuenta de github o porque ni siquiera tienes generada un par de claves (publica/privada) y por lo tanto tampoco esta almacenada en el github.

NOTA: el error solo se produce si se utiliza el protocolo SSH si se utiliza el protocolo HTTP no deberia de salir este error

Para generar el par de claves lanzamos el siguiente comando:

> ssh-keygen

Si introducimos el comando sin parametros nos realizara un par de preguntas, donde guardar la clave privada, y el passphrase. si dejamos los valores por defecto el passphrase quedara vacio y la clave se guardara en ~/.ssh/id_rsa

Si usamos los valores por defecto la clave publica se guardara en ~/.ssh/id_rsa.pub este es el valor que tendremos que introducir en el github para almacenar la clave publica

Dentro de github nos vamos a settings:

Despues entramos en SSH and GPG keys:

Hacemos click en New SSH key:

A continuacion dentro de Title ponemos un titulo descriptivo y dentro de key introducimos el contenido del archivo id_rsa.pub

Al hacer click en Add SSH key github nos pedira que introduzcamos la contraseƱa de nuestra cuenta, al hacerlo la clave ya estara creada y ya podremos haver uso de los comandos como push

Tags

Git | push | public key